3D direction finding method and device therefore

ABSTRACT

A method of determining a direction of arrival of a signal at a device comprising an antenna with multiple antenna elements, in a processor of the device configured to calculate an average signal for each antenna element based on the signal received at the antenna element over N time slots, determine respective phases of the average signals and determine at least one of an azimuth and elevation angle of the signal using the determined phases and information of the location of the antenna elements.

FIELD

Embodiments described herein relate generally to the computationallyefficient determination of the angle or direction of arrival of asignal.

BACKGROUND

A feature of interest in the development of the low energy Bluetoothstandard is direction finding, where a Bluetooth device equipped withmultiple antenna elements can identify the direction of arrival of areceived signal. Algorithms for the estimation of signal arrival anglesor direction have previously been proposed. For Bluetooth low energy(BLE) devices, it is however necessary that the algorithm becomputationally efficient.

Direction finding (DF) methods enable a device to determine the angle ofarrival (AoA) or angle of departure (AoD) of signals by exploiting thedifferences in the received signal across different antenna elements.These methods can be classified as either spectral-based algorithm suchas Bartlett, MUSIC and Capon or parametric-based algorithms such asMaximum Likelihood (ML). The techniques differ in performance andcomputational complexity.

While the complexity of DF schemes is manageable for a number ofscenarios, for future low energy, low complexity devices with limitedprocessing capabilities, the existing methods may not be feasible. Thisproblem is exacerbated in 3D DF where the elevation angles also need tobe computed.

Most of the conventional AoA/AoD algorithms in the array processingliterature do not exploit the waveforms of the transmit signal. From thereceived signals at multiple antennas across several samples the samplecovariance matrix may be derived. This covariance matrix is then used toderive a ‘spectrum’ wherein peaks correspond to the angles of interest.

In the following, embodiments will be described with reference to thedrawings in which:

FIG. 1 shows a model of a system comprising 4 antenna elements alongsidea signal source to be tracked with the relevant elevation θ and azimuthϕ angles;

FIG. 2 shows a method according to an embodiment;

FIG. 3 shows a device according to an embodiment;

FIG. 4 shows a system employing the device of the embodiment; and

FIG. 5 shows absolute error curves provided by an embodiment.

DETAILED DESCRIPTION

According to an embodiment there is provided a method of determining adirection of arrival of a signal at a device comprising an antenna withmultiple antenna elements, in a processor of the device configured tocalculate an average signal for each antenna element based on the signalreceived at the antenna element over N time slots, determine respectivephases of the average signals and determine at least one of an azimuthand elevation angle of the signal using the determined phases andinformation of the location of the antenna elements.

The method may further comprise defining, as two candidate azimuthangles, a determined azimuth angle and an angle spaced apart from thedetermined azimuth angle by 180 degrees and using a spectral-baseddirection finding algorithm or a parametric-based direction findingalgorithm to decide between the candidate azimuth angles.

The values of the signal received over the N time slots can beidentical.

The average may be calculated as a weighted average of the signalreceived over the N time slots if values of the signal received over theN time slots are not identical.

Ratios of averaged signals received through different antenna elementsmay be formed. The phase determination may be based on the ratios.

The information of the location of the antenna elements can be providedin a matrix. A vector comprising the phases of the averaged signals maybe left-multiplied with a pseudo inverse of the matrix.

A determined angle of arrival of the signal may be output to a computingsystem.

According to a further embodiment there is provided a device comprisingan antenna with multiple antenna elements and a processor configured tocalculate an average signal for each antenna element based on the signalreceived at the antenna element over N time slots, determine respectivephases of the average signals and determine at least one of an azimuthand elevation angle of the signal using the determined phases andinformation of the location of the antenna elements.

According to another embodiment there is provided a non-transitorystorage medium comprising computer program instructions, the computerprogram instructions, when executed by the processor configured to causethe processor to perform any of the aforementioned methods.

An advantage of the embodiments is the lower complexity in findingdesired angles. As opposed to searching over all possible combinationsof angles, a closed-form approximation to the desired solutions isprovided.

Known methods for determining the angle of arrival of a signal at amulti-antenna array include Bartlett, MUSIC and Capon. From the receivedsignals, the mentioned schemes compute the sample covariance matrix as:

$\begin{matrix}{{\hat{R}}_{ss} = {\frac{1}{N}{\sum\limits_{t = 1}^{N}{{s(t)}{{s^{H}(t)}.}}}}} & (1)\end{matrix}$wherein s(t) is the signal transmitted at time instant t, s^(H)(t) isthe conjugate transpose of the signal transmitted at time instant t andN is the number of time slots over which the signal is received.

Computing the covariance matrix {circumflex over (R)}_(ss) requires

$\frac{NK}{2}\left( {K + 1} \right)$complex multiplications,

$\frac{K}{2}\left( {N - 1} \right)\left( {K + 1} \right)$complex additions,

$\frac{K}{2}\left( {K + 1} \right)$divisions and

$\frac{K}{2}\left( {K - 1} \right)$complex conjugate operations. In the Bartlett method for instance, theangles of interest are obtained from the sample covariance matrix bysolving the following optimizations problem:

$\begin{matrix}{\arg\;{\max\limits_{{0 \leq \theta < 180},{0 \leq \phi < 360}}{{a^{H}\left( {\theta,\phi} \right)}{\hat{R}}_{ss}{{a\left( {\theta,\phi} \right)}.}}}} & (2)\end{matrix}$

For simple, low energy devices such as Bluetooth, performing suchoperations can be challenging.

The inventors have realised that the large computational complexity isprimarily due to the large angle search space. FIG. 1 shows a systemwith a receiving device having K antenna elements. A signal received atthe k^(th) antenna from a single signal source without multi-pathinterference at time instant t is given by:

$\begin{matrix}\begin{matrix}{{y_{k}(t)} = {{{\exp\left( {{- j}\;\frac{2\pi}{\lambda}r_{k}^{T}w} \right)}{s(t)}} + {n_{k}(t)}}} \\{= {{{a_{k}\left( {\theta,\phi} \right)}{s(t)}} + {n_{k}(t)}}}\end{matrix} & (3)\end{matrix}$where r_(k)=[x_(k), y_(k), z_(k)]^(T) represent the Euclideancoordinates vector of the kth antenna element (as shown in FIG. 1), λ isthe signal wavelength, n_(k)(t) is the additive white Gaussian noise atantenna k and the steering vector w is:

$\begin{matrix}{w = \begin{bmatrix}{\sin\;\theta\;\cos\;\phi} \\{\sin\;\theta\;\sin\;\phi} \\{\cos\;\theta}\end{bmatrix}} & (4)\end{matrix}$

The azimuth and elevation angles, ϕ and θ, respectively are the unknownparameters of interest.

In vector notation the signal at the antenna array at time t is:y=a(θ,ϕ)s(t)+n(t)  (5)where a(θ, ϕ)=[a₁(θ, ϕ, . . . , a_(K)(θ, ϕ))]^(T). We assume N snapshotsare available for estimating the angles of interest.

In conventional approaches for estimating the angles of arrival thetransmit sequence s(t) are assumed to be unknown. However, inapplications such as Bluetooth, s(t) can be assumed to be known. In factin the Bluetooth standard the sequence is chosen to be:s=[1,1, . . . ,1]  (6)i.e., it consists of a N consecutive ones. It will, however, beappreciated that, in other standards, different predetermined/knowntransmit sequences may be used. Such structures can be exploited toreduce the complexity of direction finding algorithms.

In an angle-of-arrival (AoA) estimation scenario, where the receiver isequipped with K antennas arranged in a uniform circular array in whichthe receiver estimates the angle after N snapshots, in matrix notation,the signal received across K antennas over N timeslots/samples/snapshots is:Y=a(θ,ϕ)s+V  (7)where Y=[y(1), . . . , y(N)], y(n)=[y₁(n), . . . , y_(K)(n)]^(T), V isthe K×N complex matrix representing the additive Gaussian noisecomponents,

a(θ, ϕ) = [a₁(θ, ϕ), a₂(θ, ϕ), …  , a_(K)(θ, ϕ)]^(T)  where${a_{k}\left( {\theta,\phi} \right)} = {{\exp\left( {{- j}\;\frac{2\pi}{\lambda}r_{k}^{T}w} \right)}.}$

With s=[1, 1, . . . , 1], Y can be viewed as the outcome of anexperiment repeated N times. With zero mean additive white Gaussiannoise and for large N:E[Y]=E[a(θ,ϕ)s]=a(θ,ϕ)  (8)

Whilst large N are desirable, in practice the embodiment performed wellwith N as small as 7. Larger values of N are used in other embodiments.

The averaged received sequence is given by:

$\begin{matrix}{{E\lbrack Y\rbrack} = {\overset{\sim}{y} = {{\sum\limits_{t = 1}^{N}{y(t)}} \approx {a\left( {\theta,\phi} \right)}}}} & (9)\end{matrix}$

With a single source with no multipath components or a strong line ofsight component, the phase of individual entries of {tilde over (y)} canbe approximated to the phases of the corresponding entries in a(θ, ϕ).This means the received signal {tilde over (y)} can be represented as:y=[e ^(−ib) ¹ ,e ^(−ib) ² , . . . ,e ^(−ib) ^(K) ]^(T)  (10)where b=[b₁, . . . , b_(K)]^(T) corresponds to the phases of {tilde over(y)}. Thus:b=Rw  (11)where

$R = {{\frac{2\pi}{\lambda}\begin{bmatrix}r_{1}^{T} \\\vdots \\r_{K}^{T}\end{bmatrix}}.}$

It follows that an estimate of w is given by:ŵ=R ⁺ b  (12)where R⁺ is the pseudo-inverse of R. This value is dependent only on thelocations of the antenna elements and does not change over time. Thus,this matrix can be computed at design time and stored in the devicememory to reduce the computational complexity of the system.

The azimuth and elevation angles can be solved by equating and solving:

$\begin{matrix}{\hat{w} = {\begin{bmatrix}{\hat{w}}_{1} \\{\hat{w}}_{2} \\{\hat{w}}_{3}\end{bmatrix} = \begin{bmatrix}{\sin\;\hat{\theta}\;\cos\;\hat{\phi}} \\{\sin\;\hat{\theta}\;\sin\;\hat{\phi}} \\{\cos\;\hat{\theta}}\end{bmatrix}}} & (13)\end{matrix}$

It follows that

$\hat{\phi} = {{{atan}\;\frac{{\hat{w}}_{2}}{{\hat{w}}_{1}}\mspace{14mu}{and}\mspace{14mu}\hat{\theta}} = {{asin}\;{\frac{{\hat{w}}_{1}}{\cos\;\hat{\phi}}.}}}$

In planar array configurations that may be used in Bluetooth devices,the z-coordinates of all the antenna elements, as well as ŵ₃ are zero.Moreover, given the planar configuration of the antenna array, it is notpossible to distinguish whether the received signal is impinging on thearray from above or the bottom. As such, we can set the range of{circumflex over (θ)} to [0, 90]. If {circumflex over (θ)}>90° from theabove equations, the estimate of the elevation angle is changed to{circumflex over (θ)}→180−{circumflex over (θ)}.

In some cases, multiple feasible solutions may exist. For instance,observe that tan ϕ=tan(ϕ)+180°). In such an instance, prior art subspacebased algorithms, such as Bartlett or MUSIC, or any other maximumlikelihood or subspace-based method, can be used to evaluate the costfunction at these two angles, i.e., ϕ and ϕ+180°. It was found that thiscan be achieved without performance degradation.

The angle that, according to the evaluated cost function, provides theoptimal solution is selected as the desired angle. Compared to theconventional MUSIC algorithm, where the cost function has to beevaluated over all possible angles, the above described method iscomputationally very inexpensive. Assuming a step size of 1, the numberof times the cost function is evaluated in the MUSIC or Bartlett methodis 360*90=32400.

In the algorithm of the embodiment, instead on the sample covariancematrix,

$\overset{\sim}{y} = {{\left\lbrack {{\overset{\sim}{y}}_{1},{\overset{\sim}{y}}_{2},\ldots\mspace{14mu},{\overset{\sim}{y}}_{K}} \right\rbrack^{T}\mspace{14mu}{where}\mspace{14mu}{\overset{\sim}{y}}_{k}} = {\frac{1}{N}{\sum\limits_{n = 1}^{N}Y_{k,n}}}}$and Y_(k,n) is the entry in Y on row k, column n. The computation of thevector {tilde over (y)} therefore consists only of NK complex additionsand K divisions (K complex numbers divided by a scalar). Computing thephases of {tilde over (y)} involves K real divisions and K inversetrigonometric operations. As mentioned above, the pseudo-inverse of thelocations matrix can be precomputed and stored in the device. Theremaining steps are also straight forward.

The signal received across K antenna elements may contain an additionalphase term. The signal received at time t at antenna element k is then:

$\begin{matrix}{{y_{k}(t)} = {{{\exp\left( {{{- j}\;\frac{2\pi}{\lambda}r_{k}^{T}w} + \epsilon} \right)}{s(t)}} + {n_{k}(t)}}} & (14)\end{matrix}$where ∈ is an additional phase term. Without loss of generality, it canbe assumed that ∈ is the same across all K antennas. One way ofeliminating this unknown phase term is by taking the difference betweensuccessive rows of the matrices and perform the same operations asstated above. For example a difference matrix with K−1 rows can bedefined as:

$\begin{matrix}{\overset{\_}{R}\overset{\Delta}{=}\begin{bmatrix}{r_{1}^{T} - r_{2}^{T}} \\{r_{2}^{T} - r_{3}^{T}} \\\vdots \\{r_{K - 1}^{T} - r_{K}^{T}}\end{bmatrix}} & (15)\end{matrix}$

Similarly, we define the vector:

$\begin{matrix}{\overset{\_}{y}\overset{\Delta}{=}{\begin{bmatrix}{{\overset{\sim}{y}}_{1}/{\overset{\sim}{y}}_{2}} \\\vdots \\{{\overset{\sim}{y}}_{K - 1}/{\overset{\sim}{y}}_{K}}\end{bmatrix} = \begin{bmatrix}e^{i{\overset{\sim}{b}}_{1}} \\\vdots \\e^{i{\overset{\sim}{b}}_{K - 1}}\end{bmatrix}}} & (16)\end{matrix}$

Different definitions of difference matrices are also possible.

The initial estimate of azimuth and elevation angles is given by:ŵ=R†b   (17)

FIG. 2 shows illustrates a method 200 of an embodiment. In step 210 theaverage {tilde over (y)} of the received signal sequences is calculated.As is the case in equation (8), this is done by summing all N elementsof the received sequence. Whilst this sum could be divided by N doing sois not necessary as the calculated sum equally represents the averagesignal.

Based on the calculated average {tilde over (y)} the difference vector yis calculated in step 220 based on equation (15) above. The phases b isof y are then computed in step 230 and used in steps 240 and 250 tosolve for the azimuth and elevation angles. If the azimuth value isdetermined in step 260 to be smaller than 0 degrees then the possibleazimuth angles are set (in step 270) to include not only the determinedazimuth angle but also another possible azimuth angle spaced 180 degreesapart from the determined azimuth angle.

If the azimuth value is determined in step 260 not to be smaller than 0degrees then the possible azimuth angles are set (in step 300) toinclude the determined azimuth angle plus 180 degrees as well as thedetermined azimuth angle plus 360 degrees.

In addition to steps 260, 270 and 300, in step 310 it is determined ifthe elevation angle is greater than 90 degrees. Should this be the casethen the elevation angle that will be considered is 180 degrees minusthe determined elevation angle (step 320).

The candidate azimuth angles and the elevation angle are used as inputangles in a conventional direction finding scheme in steps 280 and 290to determine which of the candidate angles is more likely to be thecorrect candidate angle.

In summary, in an embodiment the following steps are performed tocalculate an angle of arrival.

-   -   1) The average of the received signal vector over N time        instances is calculated    -   2) The phase of the average signal vector is calculated    -   3) The phase vector is then left-multiplied with the        pseudo-inverse of the antenna location matrix and solved for the        azimuth and elevation angles respectively    -   4) Should there be ambiguity then the search space to be covered        by known direction finding algorithms can be reduced by using        the known algorithm to decide which one of the candidate angles        is the correct candidate angle or is at least most likely to be        the correct candidate angle.

The above discussion has focussed on situations in which the signalsreceived are known and identical. The embodiments described herein are,however, not limited to this situation. In alternative situations inwhich the received signal sequence is known but in which the signalsreceived in the N time instances are not the same, the above discussedaverage can be calculated as a weighted average, so that the noise termis eliminated from the angle of arrival estimation in the same manner asdiscussed above.

Another embodiment of the proposed method could be to compute the phasedifference between the signals received at the different antennaelements for each of the N samples and then take the average of theresults. This will remove any effect due to different signals beingtransmitted at different time instants.

In embodiments the low complexity direction finding approach usesknowledge of a known transmit sequence. In the supplemental frame ofBluetooth low energy (BLE) transmissions, for instance, the transmitsequence is likely to be a constant signal. Under additive whiteGaussian noise with zero mean, averaging the received sequence overmultiple time instances ‘filters’ out the noise. The task of determiningthe azimuth and elevation angles then reduces to simpler operations. Themethod of the embodiments yield similar performance in the case of asingle path as the conventional Bartlett algorithm over a wide range ofsignal-to-noise ratio values, while requiring much lower computationalcomplexity. Moreover, the proposed method can used with existingalgorithms such as MUSIC or Bartlett to reduce the search space of thesealgorithms.

FIG. 3 shows a device 100 according to an embodiment. In an embodimentthe device is a BLE device. The device comprises four antenna elements110. Each antenna element is communicatively connected to a receiverchain 120. The receiver chain 120 processes, including digitisation,received signals and transmits them to a processor 130. The processor130 is coupled to non-volatile memory 140. Memory 140 stores computerprogram instructions that, when executed, cause the processor 130 toexecute program steps that implement the above described method on thebasis of signals received via the antenna elements 110 and receiverchains 120. The processor 130 may be an FPGA programmed to perform amethod of an embodiment or a microprocessor executing programinstructions stored in memory, wherein the program instructions causethe microprocessor to perform a method of an embodiment. It will beappreciated that the process could also be comprised of adders foraveraging, with other computational steps being performed by accessinglook-up-tables. The memory may comprise only read-only memory thatstores the inverse of matrix R and/or the look-up-tables and/or programinstructions for the microprocessor. Any intermediate values arrived atduring performance of the above described method may be stored involatile buffer memory. Alternatively the memory may be read/writememory so that all of the abovementioned data can be stored in thememory as well as any intermediate values that are needed for latercomputational steps.

The processor 130 is moreover coupled to an output port 150 forcommunicating calculated angles of arrival to outside entities.

FIG. 4 illustrates a system comprising the device 100, communicativelyconnected to a computing system 200. In the embodiment the connectionbetween the two systems is established via output port 150 of device100. The computing system 200 may, in one embodiment, be part of anon-board computing system of a vehicle, with the device 100 receivingand evaluating according to an embodiment signals received from tyrepressure sensors integrated in the tyres of the vehicle. As tyres areinterchangeable and can rotate positions on the vehicle as they age theposition of a given tyre/tyre pressure monitoring device on the vehicleat a given point in time is not necessarily known. By determining theangle of arrival of a signal received from the tyre pressure monitoringdevice in a tyre the computing environment 200 can determine from whichtyre on the care a signal indicating, for example, under-inflation wasreceived. Based on this information the operator of the vehicle can begiven detailed instructions regarding which tyre needs to be inflated.

Other uses in vehicular environments are of course also possible. In oneembodiment the computing system 200 may be part of an on-board computingsystem of a vehicle, with the device 100 receiving and evaluatingaccording to an embodiment signals received from a vehicle unlockingdevice. Remote unlocking of cars allows an unparalleled conveniencehowever it can introduce security vulnerabilities, especially when a keyis in close proximity to the car but the user has no intention ofunlocking the vehicle. By determining the angle of arrival of a signalreceived from an unlocking device the computing environment 200 canrestrict the angles from which a vehicle can be unlocked. This isadvantageous as it ensures the vehicle can only be unlocked when theuser is directly in front of the vehicle door.

The computing environment may also be part of larger spaces in which themovement of signal sources is to be tracked. This may include trackingusers in a given environment, for example to enable delivery ofinformation to the user that is specific to the particular part of theenvironment in which the user is currently located, or for determiningthe location of certain objects within the environment. The angle ofarrival of a signal from a given object could, for example betransmitted to a luggage tracking system in an airport or be used todetermine where in a shop a given item is located. In these cases thecomputing environment 200 would be the or part of the luggage handlingsystem of the airport or part of or they stock monitoring system of ashop.

In FIG. 5, the absolute error in azimuth and elevation angles estimationachieved using the embodiment is plotted. The actual azimuth andelevation angles are varied and the performance analysed. The plotsindicate that the error in the angle estimation is always less than 2degrees. The azimuth error is dependent on the actual azimuth angle anddecreases with increasing signal-to-noise ratio. The performance of theembodiment is comparable to the solution of the Bartlett algorithm.

Whilst certain embodiments have been described, these embodiments havebeen presented by way of example only, and are not intended to limit thescope of the inventions. Indeed, the novel devices, and methodsdescribed herein may be embodied in a variety of other forms;furthermore, various omissions, substitutions and changes in the form ofthe devices, methods and products described herein may be made withoutdeparting from the spirit of the inventions. The accompanying claims andtheir equivalents are intended to cover such forms or modifications aswould fall within the scope and spirit of the inventions.

The invention claimed is:
 1. A method of determining a direction ofarrival of a reception signal at a device comprising a first antennaelement and a second antenna element, at least partially performed by aprocessor of the device configured to: calculate a first statisticalsignal for a first antenna element and a second statistical signal for asecond antenna element based on signals received at the first antennaelement and the second antenna element over N time slots; determinerespective phases of the first statistical signal and the secondstatistical signal; determine at least one of an azimuth or elevationangle of the reception signal using the phases and information oflocations of the first antenna element and the second antenna element;define, as at least one of two candidate azimuth or elevation angles,(1) a determined at least one of azimuth or elevation angle and (2) anangle spaced apart from the determined at least one of azimuth orelevation angle by 180 degrees; and use a spectral-based directionfinding algorithm or a parametric-based direction finding algorithm todecide between at least one of the two candidate azimuth angles or thetwo candidate elevation angles.
 2. The method according to claim 1,wherein the statistical signal is calculated as a weighted averagesignal of a signal received over the N time slots, wherein values of thesignal received over the N time slots are not identical.
 3. The methodaccording to claim 1, further comprising forming signal-to-noise ratiosof statistical signals received through different antenna elements anddetermining the phases based on the ratios.
 4. The method according toclaim 1, further comprising outputting a determined angle of arrival ofthe reception signal to a computing system.
 5. A method of determining adirection of arrival of a reception signal at a device comprising afirst antenna elements and a second antenna elements, at least partiallyperformed by a processor of the device configured to: calculate a firststatistical signal for a first antenna element and a second statisticalsignal for a second antenna element based on signals received at thefirst antenna element and the second antenna element over N time slots;determine respective phases of the first statistical signal and thesecond statistical signal; and determine at least one of an azimuth orelevation angle of the reception signal using the phases and informationof locations of the first antenna element and the second antennaelement, wherein values of a signal received over the N time slots areidentical.
 6. A method of determining a direction of arrival of areception signal at a device comprising a first antenna elements and asecond antenna elements, at least partially performed by a processor ofthe device configured to: calculate a first statistical signal for afirst antenna element and a second statistical signal for a secondantenna element based on signals received at the first antenna elementand the second antenna element over N time slots; determine respectivephases of the first statistical signal and the second statisticalsignal; and determine at least one of an azimuth or elevation angle ofthe reception signal using the phases and information of locations ofthe first antenna element and the second antenna element, wherein theinformation of the locations is provided in a matrix and wherein avector comprising the phases of is left-multiplied with a pseudo inverseof the matrix.
 7. A device comprising a first antenna elements and asecond antenna elements, and a processor configured to: calculate afirst statistical signal for a first antenna element and a secondstatistical signal for a second antenna element based on signalsreceived at the first antenna element and the second antenna elementover N time slots; determine respective phases of the first statisticalsignal and the second statistical signal; determine at least one of anazimuth or elevation angle of the reception signal using the phases andinformation of locations of the first antenna element and the secondantenna element; define, as two candidate azimuth angles, a determinedazimuth angle and an angle spaced apart from the determined azimuthangle by 180 degrees; and use a spectral-based direction findingalgorithm or a parametric-based direction finding algorithm to decidebetween the candidate azimuth angles.
 8. The device according to claim7, the processor further configured to: form signal-to-noise ratios ofthe values corresponding to the signals received through differentantenna elements; and determine phase based on the ratios.
 9. The deviceaccording to claim 7, further comprising an output for outputting adetermined angle of arrival of the signal to a computing system.
 10. Adevice comprising a first antenna elements and a second antennaelements, and a processor configured to: calculate a first statisticalsignal for a first antenna element and a second statistical signal for asecond antenna element based on signals received at the first antennaelement and the second antenna element over N time slots; determinerespective phases of the first statistical signal and the secondstatistical signal; and determine at least one of an azimuth orelevation angle of the reception signal using the phases and informationof locations of the first antenna element and the second antennaelement, wherein the information of the locations of the antennaelements is provided in a matrix and stored in said memory and wherein avector comprising the phases of the values is left-multiplied with apseudo inverse of the matrix.